Method and apparatus for image signal color correction with reduced noise

ABSTRACT

A method and apparatus for applying color correction to image signals provides different color corrections depending on a characterization associated with a pixel signal being processed or the gain applied to the pixel signal such as a value of a pixel signal being processed. The color corrections may be configured such that darker pixels have less color correction applied to them.

FIELD OF THE INVENTION

Embodiments of the invention generally relate to image processing andmore specifically to correcting color in an acquired image.

BACKGROUND OF THE INVENTION

Solid state imagers such as CCD, CMOS, and others, are in widespreaduse. FIG. 1 shows one exemplary CMOS imaging device 1 that includes aCMOS active pixel sensor (“APS”) pixel array 4 and a controller 6 thatprovides timing and control signals to enable the readout of imagesignals captured and stored in the pixels in a manner commonly known tothose skilled in the art. Example arrays have dimensions of M×N pixels,with the size of the array 4 depending on a particular application. Theimager pixels are read out a row at a time using a column parallelreadout architecture. The controller 6 selects a particular row ofpixels in the array 4 by controlling the operation of row addressingcircuit 2 and row drivers 3. Signals stored in the selected row ofpixels are provided on column lines to a readout circuit 7. The pixelsignals read from each of the columns are then read out sequentiallyusing a column addressing circuit 8. FIG. 1 shows that the readoutanalog pixel image signals are converted to digital values by an analogto digital converter 9 and then processed by an image processor 10.

One of the problems with digitally capturing an image is that portionsof or an entirety of the captured image may be dimly lit either becauseof lighting conditions or a low exposure of imager pixels. Dimly litimage portions captured by a pixel array have a low signal-to-noise(SNR) ratio. One of the goals of image processing is to reduce noise ina captured image, particularly in the pixel signals from dimly lit orunderexposed pixels.

Color correction is one of the processes applied by image processor 10to captured image signals. Color correction typically involves adjustingthe raw data from the sensor for colors to be correctly displayed on astandard output device such as a computer monitor. The same colorcorrection technique, typically in the form of a color correctionmatrix, is applied to all pixel values of an image, including pixelswhich have low signal to noise ratios because of relatively low pixelvalues. The application of color correction typically deterioratessignal-to-noise ratio. Therefore, an improved color correction processwhich lowers noise in an image, in particular for pixels with low valuesand low signal-to-noise ratios, is desirable.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a conventional CMOS imager system.

FIG. 2 depicts a portion of a conventional image processor circuit thatreceives image signals from a pixel array.

FIG. 3 depicts a portion of an image processor circuit that receives animage signal from a pixel array in accordance with an embodiment.

FIG. 4 is a block diagram representation of a image processor system,e.g., a camera system, incorporating an embodiment described herein.

DETAILED DESCRIPTION OF THE INVENTION

In the following detailed description, reference is made to theaccompanying drawings, which form a part hereof, and in which is shownby way of illustration specific embodiments that may be practiced. Theseembodiments are described in sufficient detail to enable those ofordinary skill in the art to make and use them and it should beappreciated that structural, logical, or procedural changes may be madeto the specific embodiments disclosed without departing from the spiritor scope of the invention.

In one embodiment, a color correction matrix, which is applied to asignal from a pixel of a pixel array is related to the value of thepixel signal. Thus, a pixel having a low signal level indicative of adark pixel uses a color correction matrix different from a pixel havinga high signal indicative of a non-dark pixel. Multiple matrixes andassociated threshold values may be employed. The matrix values areselected such that reduced noise is present in the corrected pixelvalues.

Pixel arrays employing a Bayer color filter pattern typically output RGBcolor pixel values, since each pixel is covered by one of a red, agreen, or a blue filter. To obtain red, green, and blue information foreach pixel (which may have a 10 bit value for each color) to create aRGB triplet of data, color interpolation is needed. The color values ofappropriate neighboring pixels are used to interpolate a missing colorvalue for a pixel. For example, if one of the green pixels on a GRGRsequence line of the Bayer pattern is being read out, the process ofcolor interpolation may estimate that pixel's blue value by looking atthe blue above and below it and taking the average of those blue values.For the red estimate, the process looks at the red pixels to the leftand right of the green pixel and averages those.

RGB pixel values in captured images are typically specified in a certainstandard color space. A standard color space prescribes which colorcorresponds to every possible RGB triplet value. Raw RGB tripletscaptured by the sensor array typically must undergo a special operationthat adjusts values of raw RGB triplets and makes RGB values of imagedobjects of certain colors, as perceived by a human observer after visualchromatic adaptation, correspond to RGB values prescribed by thestandard for those colors. This operation is called color correction andis commonly achieved by multiplying the raw RGB triplets by a 3×3matrix.

A typical color correction operation can be expressed as follows

$\begin{matrix}{\overset{\_}{P_{{CC}_{i,j}}} = {A*\overset{\_}{P_{{RAW}_{i,j}}}}} & (1)\end{matrix}$

where A is the color matrix:

$\begin{matrix}{A = {\begin{matrix}a_{11} & a_{12} & a_{13} \\a_{21} & a_{22} & a_{23} \\a_{31} & a_{32} & a_{33}\end{matrix}}} & (2)\end{matrix}$

and P_(RAW i,j) is the column-vector of the red, green and blue valuesfor pixel P_(i,j) before color correction

$\begin{matrix}{\overset{\_}{P_{{RAW}_{i,j}}} = {\begin{matrix}R_{{RAW}_{i,j}} \\G_{{RAW}_{i,j}} \\B_{{RAW}_{i,j}}\end{matrix}}} & (3)\end{matrix}$

and P_(CC i,j) is the column-vector of the red, green and blue valuesfor pixel P(i,j) after color correction

$\begin{matrix}{\overset{\_}{P_{{CC}_{i,j}}} = {\begin{matrix}R_{{CC}_{i,j}} \\G_{{CC}_{i,j}} \\B_{{CC}_{i,j}}\end{matrix}}} & (4)\end{matrix}$

The resulting values areR _(CC i,j) =R _(RAW i,j) +a ₁₁ +G _(RAW i,j) *a ₁₂ +B _(RAW i,j) *a₁₃  (5)G _(CC i,j) =R _(RAW i,j) *a ₂₁ +G _(RAW i,j) *a ₂₂ +B _(RAW i,j) *a₂₃  (6)B _(CC i,j) =R _(RAW i,j) *a ₃₁ +G _(RAW i,j) *a ₃₂ +B _(RAW i,j) *a₃₃  (7)

The color correction matrix is applied as part of the image processingperformed by image processor 10. FIG. 2 depicts a portion of an imageprocessor 10 which receives digital image signals on line 31 fromupstream circuits and ultimately from a pixel array 4. The dotted linerepresents omitted circuits and/or upstream processing tasks

In some conventional image processing systems, the image signal isreceived by a digital gains circuit 29 and then is provided to ademosaic circuit 30 that processes the signals from a sensor arrayequipped with RGB Bayer color filters to reconstruct missing values ofRGB triplets. The digital gains circuit 29 provides gains to the imagesignal per pre-imposed design or by need.

After processing by demosaic circuit 30, the image signal is provided tothe color correction matrix multiplier circuit 40 on line 33. The colorcorrection matrix multiplier circuit 40 applies the color correctionmatrix, e.g., the matrix of equation (1) to the image signal received online 33 and provides the post color correction matrix processed signalon line 35. The application of the color correction matrix may be one ofmany different processing steps that are applied to image signals beforebeing provided downstream for printing, display, or storage.

As noted, in a conventional image processor circuit 10, the colorcorrection matrix is applied regardless of the pixel signal values.Thus, the color correction matrix is equally applied to a dark pixel asit is applied to a light pixel or to an intermediate signal level pixel.This may be undesirable as it can increase undesired noise in the darkerpixels.

Embodiments described herein provide a method and system that uses morethan one color correction matrix with the choice of which colorcorrection matrix to apply being based on how dark the pixel signal is.Thus, a threshold value, or values, is established, where if the pixelsignal level is above the threshold value, then a first color correctionmatrix is used for that pixel. However, if the pixel signal level isbelow the threshold value, a second color correction matrix is used forthat pixel. The threshold values are also referred to as “knee-points.”

FIG. 3 depicts a portion of an image processor circuit 110 that receivesan image signal on line 31 from upstream circuits in accordance with anembodiment. In the illustrated processor circuit 110, the image signalis received by a demosaic circuit 30 that processes the signals fromblack or dark pixels to increase saturation or definition of thosesignals that do not have much color. After processing by demosaiccircuit 30, the image signal is provided to the color correction matrixmultiplier circuit 140 on line 33. The color correction matrixmultiplier circuit 140 applies a color correction matrix to the imagesignal received on line 33 and provides the post color correction matrixprocessed signal on line 35. The application of the color correctionmatrix may be one of many different processing steps that are applied toimage signals before being provided downstream for further processing,storage, or output.

The illustrated image processor circuit 110 is different from imageprocessor circuit 10 (FIG. 2) in that image processor circuit 110includes a color correction matrix mixer 60 that determines and providesan appropriate color correction matrix to be used by the colorcorrection matrix multiplier 140. As discussed below, based on the valueof the pixel signal, which is provided by demosaic circuit 30 to thecolor correction matrix mixer 60 on line 33, a color correction matrixis chosen and that color correction matrix is provided to the colorcorrection matrix multiplier 140 on line 37.

In an embodiment, there are several thresholds and several colorcorrection matrixes that may be supplied by correction matrix mixer 60respectively corresponding to the thresholds. As an example, matrices A,B, C, and V may be used to create a matrix which is supplied tomultiplier 140 and which corresponds to different thresholds levels of apixel signal. Matrix A is a “normal” color correction matrix noted abovewith respect to equation (1) as determined to align the color responseof a sensor with a known color space. Matrix B is a unity colorcorrection matrix, which is a constant matrix shown as follows:

$\begin{matrix}{B = {\begin{matrix}1 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 1\end{matrix}}} & (8)\end{matrix}$

Matrix V is a constant matrix that converts from standard sRGB space toa YUV space as follows:

$\begin{matrix}{V = {{\begin{matrix}1 & {- 1} & 0 \\0 & 1 & 0 \\0 & {- 1} & 1\end{matrix}} \cdot {\begin{matrix}1 & 0 & 0 \\0.2126 & 0.7152 & 0.0722 \\0 & 0 & 1\end{matrix}}}} & (9)\end{matrix}$

Matrix C is a unity color correction matrix with zero saturation (alsoreferred to herein as the desaturation unity color correction matrix).This matrix is also a constant. It is obtained by converting, the unitycolor correction matrix B to YUV space; that is, multiplying matrix B bymatrix V, then multiplying the UV components by zero to remove colorcomponents and converting the matrix result back to RGB space, i.e.,multiplying by matrix V⁻¹ as follows:

$\begin{matrix}{C = {{V^{- 1} \cdot {\begin{matrix}0 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 0\end{matrix}} \cdot V \cdot B} = {\begin{matrix}0.2126 & 0.7152 & 0.0722 \\0.2126 & 0.7152 & 0.0722 \\0.2126 & 0.7152 & 0.0722\end{matrix}}}} & (10)\end{matrix}$

In the ensuing discussion the four matrices A, B, C and V are used toproduce, in mixer 60, a color correction matrix which is supplied tomultiplier 140 in the manner now described.

As said previously, P_(RAW i,j) represents an ROB triplet of color dataof a signal from a pixel P_(i,j) after demosaicing. As in conventionalimage processing, the triplet of raw color image data has not yet beencolor corrected, but has been white point corrected.

Also as said previously, in conventional processing, a signal,P_(RAW i,j) from each pixel after demosaicing is color corrected bymultiplying the pixel signals by the color correction matrix A. Thus, inconventional color correction processing,

$\overset{\_}{P_{{CC}_{i,j}}} = {A*\overset{\_}{P_{{RAW}_{i,j}}}}$

According to an embodiment, the proposed color correction is a basedupon the signal value, m_(i,j), from the pixel, where m_(i,j) is themaximum value one of the RGB triplets of raw color data{R_(i,jRaw),G_(i,jRaw),B_(i,jRaw)}, thus, m_(i,j)=max{R_(i,jRaw),G_(i,jRaw),B_(i,jRaw)}. Three break points, e.g., a, b, c,are established based on the value of m_(i,j), ideally to process darkerpixels in the pixel array differently from less-dark pixels. Forexample, if each of the RGB triplets has a 10-bit digital value, e.g.,having a range from 0-1023 where 0 represents the darkest value and 1023represents the brightest value, breakpoint a can be set at 60,breakpoint be can be set at 40, and breakpoint c can be set at 20.Therefore, based on the three exemplary breakpoints, there are fourdifferent color correction matrixes that can be supplied by the colorcorrection mixer 60 to the color correction multiplier 140 as shown inthe following equation:

$\begin{matrix}{{M\left( m_{i,j} \right)} = \left\{ \begin{matrix}C & {0 \leq m_{i,j} < c} & \; & \; \\{{C \cdot \left( {1 - \alpha} \right)} + {B \cdot \alpha}} & {c \leq m_{i,j} < b} & {where} & {\alpha = \frac{m_{i,j} - c}{b - c}} \\{{B \cdot \left( {1 - \alpha} \right)} + {A \cdot \alpha}} & {b \leq m_{i,j} < a} & {where} & {\alpha = \frac{m_{i,j} - b}{a - b}} \\A & {a \leq m_{i,j}} & \; & \;\end{matrix} \right.} & (12)\end{matrix}$

where M(m_(i,j)) is the matrix supplied to the color correctionmultiplier 140. Thus, for all pixel signals that are not deemed dark,e.g., m_(i,j)=max (R_(i,jRaw),G_(i,jRaw),B_(i,jRaw))>(a=60), thenM(m_(i,j)), the color correction to be applied, is the conventionalcolor correction matrix A (equation 1 above). For darker pixel signals,where m_(i,j)=max (R_(i,jRaw),G_(i,jRaw),B_(i,jRaw))<(a=60) andm_(i,j)=max (R_(i,jRaw),G_(i,jRaw),B_(i,jRaw))>(#40), M(m_(i,j)) iscombination of the conventional color correction matrix A and the unitycolor correction matrix B (equation 7 above). For even darker pixelsignals, where m_(i,j)=max (R_(i,jRaw),G_(i,jRaw),B_(i,jRaw))<(b=40) andm_(i,j)=max (R_(i,jRaw),G_(i,jRaw),B_(i,jRaw))>(c=20), M(m_(i,j)) iscombination of the conventional color correction matrix B anddesaturated unity color correction matrix C (equation 9 above). Thedesaturated unity color correction matrix C is similar to the unitycolor correction matrix B, but as pixel signals this dark generally donot have color, this matrix attenuates some of the pixel signal colorand removes noise. For the darkest pixel signals, where m_(i,j)=max(R_(i,jRaw),G_(i,jRaw),B_(i,jRaw))<(c=20), M is the desaturated unitycolor correction matrix C. This matrix suppresses most, if not all, ofthe pixel color and achieves the strongest noise reduction.

The color correction threshold solution equation (equation 10) can besimplified for efficient hardware implementation as follows:

$\begin{matrix}{{M\left( m_{i,j} \right)} = \left\{ {\begin{matrix}C & {0 \leq m_{i,j} < c} & \; & \; & \; \\{C\; + {\Delta_{BC} \cdot \alpha}} & {c \leq m_{i,j} < b} & {\alpha = {\left( {m_{i,j} - c} \right) \cdot k_{bc}}} & {\Delta_{BC} = {B - C}} & {\;{k_{bc} = \frac{1}{b - c}}} \\{B\; + {\Delta_{AB} \cdot \alpha}} & {b \leq m_{i,j} < a} & {\alpha = {\left( {m_{i,j} - b} \right) \cdot k_{ab}}} & {\Delta_{AB} = {A - B}} & {k_{ab} = \frac{1}{a - b}} \\A & {a \leq m_{i,j}} & \; & \; & \;\end{matrix}.} \right.} & (13)\end{matrix}$

In a preferred embodiment, k_(bc) and k_(ab) are constants and arepre-computed and pre-loaded into hardware registers. Additionally,Δ_(BC) and Δ_(AB) are pre-computed and pre-loaded into hardwareregisters. Furthermore, the values of matrices A, B, and C arepre-loaded into hardware registers. Alternatively, the differentmatrixes M(m_(i,j)) can be preloaded along with the selected points a,b, and c in hardware registers, or the breakpoints may be settable by auser.

Although an embodiment is discussed above in reference to having threebreakpoints, a, b, c, the invention is not so limited and any number ofbreakpoints can be set. Additionally, the breakpoint thresholds are notlimited to being 60, 40, and 20; as other breakpoint values can be used.Furthermore, although specific color correction matrices A, B, C areused above, the invention is not so limited, and other color correctionmatrixes can be implemented which process darker pixels differently thanlighter pixels.

As a further modification, the matrix which is used for color correctionis based on the break points a, b, c and the maximum value m_(i,j) of apixel color triplet of a demosaiced pixel; however, the value m_(i,j)can also be based on an average of the three color component values in apixel color triplet.

Thus, the image processor circuit 110 applies a color correction matrixdependent on the relation of the value of the pixel signal topredetermined breakpoints. The darker the pixel, the increased amount ofcolor that is discarded when performing a color correction producing anincreased signal-to-noise ratio.

In another embodiment, the color correction matrix supplied by colorcorrection mixer 60 is not a function of the pixel signal value, but isa function of another value that is determined as part of an imagecapture process. For example, a color correction matrix may be selectedbased on the value of the gain applied to pixel signals. Therefore,different color correction matrices are applied to pixel signals basedon different gain settings. For example, different gain settingbreakpoints are established, similar to approach described above withrespect to breakpoints a, b, and c. Gain settings are grouped andbounded by breakpoints that correspond to a specific color correctionmatrix. Thus, a gain setting applied to a signal determines theappropriate color correction matrix that is used. For example, in goodillumination when low values of analog gains are used the breakpointscould be set to a=60, b=0, and c=0.

Although discussed above in reference to having three breakpoints,embodiments are not so limited and any number of breakpoints can be set.Additionally, the breakpoint thresholds are not limited to being a=60,b=0, c=0, as other breakpoint values can be used. Furthermore, althoughspecific color correction matrices A, B, C are used above, theembodiments are not so limited, and other color correction matrixes canbe implemented which process darker pixels differently than lighterpixels.

In another aspect, an alternative way to calculate the matrix andperform color correction is provided. To derive the general case ofprocessing, we perform normalization of matrix A. The normalizationprocess factors out digital gains applied to RGB raw channels out of thematrix. The digital gains are then applied to the unity matrix.

Matrix A is a product of normalized color correction matrix D and awhite point transformation matrix G. In cases when G is diagonal, itscoefficients correspond to digital gains applied to raw data. Thenormalized matrix D is constructed so that each row sums up to unity.

$\begin{matrix}{{A = {{\begin{matrix}a_{11} & a_{12} & a_{13} \\a_{21} & a_{22} & a_{23} \\a_{31} & a_{32} & a_{33}\end{matrix}} = {D \cdot G}}}{D = {\begin{matrix}\frac{a_{11}}{a_{11} + a_{12} + a_{13}} & \frac{a_{12}}{a_{11} + a_{12} + a_{13}} & \frac{a_{13}}{a_{11} + a_{12} + a_{13}} \\\frac{a_{21}}{a_{21} + a_{22} + a_{23}} & \frac{m_{22}}{a_{21} + a_{22} + a_{23}} & \frac{m_{23}}{a_{21} + a_{22} + a_{23}} \\\frac{a_{31}}{a_{31} + a_{32} + a_{33}} & \frac{a_{32}}{a_{31} + a_{32} + a_{33}} & \frac{a_{33}}{a_{31} + a_{32} + a_{33}}\end{matrix}}}{G = {D^{- 1} \cdot A}}} & (14)\end{matrix}$

Matrix B is the unity matrix combined with digital gains. This matrix isa constant.

$\begin{matrix}{B = {{\begin{matrix}1 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 1\end{matrix}} \cdot G}} & (15)\end{matrix}$

Matrix C is the unity matrix combined with digital gains and having azero saturation. This matrix is a constant. It is obtained by convertingthe unity matrix to YUV space (multiply by V), multiplying the UVcomponents by zero to remove color components and converting the resultback to standard sRGB space (multiply by V⁻¹).

$\begin{matrix}{C = {V^{- 1} \cdot {\begin{matrix}0 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 0\end{matrix}} \cdot V \cdot B}} & (16)\end{matrix}$

With these matrices re-defined the color correction is applied to eachpixel in the same manner except for the following:

Define m_(i,j) as|R _(GAINEDi,j) ,G _(GAINEDi,j) ,B _(GAINEDi,j) |=G·|R _(RAWi,j) ,G_(RAWi,j) ,B _(RAWi,j) |m _(i,j)=max(R _(GAINEDi,j) ,G _(GAINEDi,j) ,B _(GAINEDi,j))  (17)

Note that if digital gains are applied to raw data, matrix G appearsdiagonal and max(R,G,B) is easy to calculate.

There may be a ease when the matrix maps gray pixels into tinted ones.For example, a customer may want to force grays to have a yellowish tintin incandescent illumination. This would provide a “warm” look to thepicture. This is typically achieved by combining a normalized matrixwith digital gains applied after.

$\begin{matrix}{A = {{\begin{matrix}a_{11} & a_{12} & a_{13} \\a_{21} & a_{22} & a_{23} \\a_{31} & a_{32} & a_{33}\end{matrix}} = {G_{POST} \cdot D \cdot G}}} & (18)\end{matrix}$

In this case the unity matrix combined with digital gains is defined as

$\begin{matrix}{B = {G_{POST} \cdot {\begin{matrix}1 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 1\end{matrix}} \cdot G}} & (19)\end{matrix}$

Thus, the resulting picture has been modified to have a different castof light.

FIG. 4 is a block diagram representation of an image processor system,e.g., a camera system 2190, incorporating an image processing device2101 in accordance with an image processor circuit implementing anembodiment described herein. A video or still camera system 2190generally comprises a shutter release button 2192, a view finder 2196, aflash 2198 and a lens system 2194. A camera system 2190 generally alsocomprises a central processing unit (CPU) 2110, for example, amicroprocessor for controlling camera functions that communicates withone or more input/output devices (I/O) 2150 over a bus 2170. The CPU2110 also exchanges data with random access memory (RAM) 2160 over bus2170, typically through a memory controller. The camera system may alsoinclude peripheral devices such as a removable memory 2130 that alsocommunicates with CPU 2110 over the bus 2170. Image processing device2101 is coupled to the processor system and includes the embodiments ofa color correction circuit as described herein. Other processor systemswhich may employ video processing devices 2101 include computers, PDAs,cell phones, scanners, machine vision systems, and other systemsemploying image processing operations.

While the embodiments have been described and illustrated with referenceto specific embodiments, it should be understood that many modificationsand substitutions could be made without departing from the spirit andscope of the claimed invention. Accordingly, the claimed invention isnot to be considered as limited by the foregoing description but is onlylimited by the scope of the appended claims. For example, colorcorrection is described above with respect to matrixes, but theinvention is not so limited and color correction can be applied withoutthe use of matrixes. Another example being that image processor 10, 110can be hardwired logic, but can also be implemented as a programmedprocessor or a combination of the two. Although embodiments have beendescribed with reference to an image processor which is part of animaging device, the invention is not so limited. The image processor maybe implemented as instructions stored on a storage medium which areexecuted by a computer or other processing device acting as an imageprocessor which receives image data. Accordingly, the invention is notlimited by the description of the embodiments described herein, but isonly limited by the scope of the pending claims.

What is claimed as new and desired to be protected by Letters Patent ofthe United States is:
 1. A method of performing a color correction withprocessing circuitry, comprising: with the processing circuitry, for aplurality of pixels in an image, applying a first color correctionmatrix to pixels that are brighter than a first pre-determinedthreshold; and with the processing circuitry, applying a second colorcorrection matrix to pixels that are darker than said firstpre-determined threshold, wherein the second color correction matrix isformed from a sum of the first color correction matrix and a unity colorcorrection matrix.
 2. The method of claim 1 further comprising: with theprocessing circuitry, applying a third color correction matrix to pixelsthat are darker than a second pre-determined threshold, wherein saidsecond pre-determined threshold is lower than said first pre-determinedthreshold.
 3. The method of claim 2 further comprising: with theprocessing circuitry, applying a fourth color correction matrix topixels that are darker than a third pre-determined threshold, whereinsaid third pre-determined threshold is lower than said secondpre-determined threshold.
 4. The method of claim 3, wherein said fourthcolor correction matrix is a desaturated unity color correction.
 5. Themethod of claim 3, wherein said third color correction matrix is acombination of a desaturated unity color correction and a unity colorcorrection.
 6. A method of performing a color correction on imagesignals using processing circuitry, comprising: with the processingcircuitry, determining which of the components of an RGB triplet of apixel signal has a maximum value among the components of the RGBtriplet; with the processing circuitry, applying a first colorcorrection to a pixel signal in response to determining that the maximumvalue among the components of the RGB triplet of the pixel signal ishigher than a first pre-determined threshold a; and with the processingcircuitry, applying a second different color correction to said pixelsignal in response to determining that the maximum value among thecomponents of the RGB triplet of the pixel signal is lower than saidfirst pre-determined threshold a.
 7. The method of claim 6, where saidfirst color correction is a color correction equation of the form:${A = {\begin{matrix}a_{11} & a_{12} & a_{13} \\a_{21} & a_{22} & a_{23} \\a_{31} & a_{32} & a_{33}\end{matrix}}},$ which is applied to said pixel signal, wherein valuesfor a₁₁ . . . a₃₃ are predetermined.
 8. The method of claim 6 furthercomprising: applying a third color correction to said pixel signal ifthe maximum value of RGB triplet of the pixel signal in is lower than asecond pre-determined threshold b, wherein said second pre-determinedthreshold b is lower than said first pre-determined threshold a.
 9. Themethod of claim 8, wherein said second color correction is a colorcorrection equation of the form: B*(1−α)+A*α, which is applied to saidpixel signal, and wherein${\alpha = \frac{m_{i,j} - b}{a - b}},{B = {\begin{matrix}1 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 1\end{matrix}}},{{{and}\mspace{14mu} A} = {{\begin{matrix}a_{11} & a_{12} & a_{13} \\a_{21} & a_{22} & a_{23} \\a_{31} & a_{32} & a_{33}\end{matrix}}.}}$
 10. The method of claim 8, wherein said third colorcorrection is a color correction equation of the form C*(1−α)+B*α, whichis applied to said pixel signal, wherein${\alpha = \frac{m_{i,j} - c}{b - c}},{C = {{V^{- 1} \cdot {\begin{matrix}0 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 0\end{matrix}} \cdot V \cdot B} = {\begin{matrix}0.2126 & 0.7152 & 0.0722 \\0.2126 & 0.7152 & 0.0722 \\0.2126 & 0.7152 & 0.0722\end{matrix}}}},$ ${V = {{\begin{matrix}1 & {- 1} & 0 \\0 & 1 & 0 \\0 & {- 1} & 1\end{matrix}} \cdot {\begin{matrix}1 & 0 & 0 \\0.2126 & 0.7152 & 0.0722 \\0 & 0 & 1\end{matrix}}}},{B = {\begin{matrix}1 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 1\end{matrix}}},{and}$ ${A = {\begin{matrix}a_{11} & a_{12} & a_{13} \\a_{21} & a_{22} & a_{23} \\a_{31} & a_{32} & a_{33}\end{matrix}}},$ and wherein values for a₁₁ . . . a₃₃ arepredetermined.
 11. The method of claim 10 further comprising: applying afourth color correction to said pixel signal if maximum value m is lowerthan a third pre-determined threshold c, wherein said thirdpre-determined threshold c is lower than said second pre-determinedthreshold b.
 12. The method of claim 11, wherein said fourth colorcorrection is an equation of the form:${C = {{V^{- 1} \cdot {\begin{matrix}0 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 0\end{matrix}} \cdot V \cdot B} = {\begin{matrix}0.2126 & 0.7152 & 0.0722 \\0.2126 & 0.7152 & 0.0722 \\0.2126 & 0.7152 & 0.0722\end{matrix}}}},{where}$ ${V = {{\begin{matrix}1 & {- 1} & 0 \\0 & 1 & 0 \\0 & {- 1} & 1\end{matrix}} \cdot {\begin{matrix}1 & 0 & 0 \\0.2126 & 0.7152 & 0.0722 \\0 & 0 & 1\end{matrix}}}},{{{and}\mspace{14mu} B} = {{\begin{matrix}1 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 1\end{matrix}}.}}$
 13. A method of performing a color correction usingan image processor, comprising: with the image processor, applying afirst color correction to a pixel signal in response to determining thata characteristic associated with said pixel signal is higher than afirst pre-determined threshold; and with the image processor, applying asecond different color correction to said pixel signal in response todetermining that said characteristic is lower than said firstpre-determined threshold, wherein the characteristic associated withsaid pixel signal is a gain setting applied to said pixel signal. 14.The method of claim 13, further comprising: with the image processor,applying a third color correction to said pixel signal in response todetermining that the characteristic is lower than a secondpre-determined threshold, wherein said second pre-determined thresholdis lower than said first pre-determined threshold.
 15. The method ofclaim 14, further comprising: with the image processor, applying afourth color correction to said pixel signal in response to determiningthat the characteristic is lower than a third pre-determined threshold,wherein said third pre-determined threshold is lower than said secondpre-determined threshold.
 16. An image processor for performing a colorcorrection process on image signals, said image processor comprising: acolor correction matrix multiplier configured to apply a colorcorrection matrix to a pixel signal produced by a pixel; and a colorcorrection matrix mixer configured to determine a color correctionmatrix which is applied by said matrix multiplier based on a value ofthe pixel signal, wherein the color correction matrix mixer is coupledto and configured to provide the determined color correction matrix tothe color correction matrix multiplier, wherein the color correctionmatrix mixer is configured to determine a first color correction matrixin response to determining that the pixel signal is higher than a firstpre-determined threshold, and wherein the color correction matrix mixeris configured to determine a second color correction matrix in responseto determining that the pixel signal is lower than the firstpre-determined threshold, wherein said first color correction matrix is${\begin{matrix}a_{11} & a_{12} & a_{13} \\a_{21} & a_{22} & a_{23} \\a_{31} & a_{32} & a_{33}\end{matrix}},$ wherein said values for a₁₁ . . . a₃₃ arepredetermined, wherein said second color correction matrix isB*(1−α)+A*α, wherein${\alpha = \frac{m_{i,j} - b}{a - b}},{B = {\begin{matrix}1 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 1\end{matrix}}},{A = {\begin{matrix}a_{11} & a_{12} & a_{13} \\a_{21} & a_{22} & a_{23} \\a_{31} & a_{32} & a_{33}\end{matrix}}},$ mij is the value of the pixel signal, a is said firstpre-determined threshold, and b is said second pre-determined threshold,and wherein said third color correction matrix is C*(1−α)+B*α andwherein${\alpha = \frac{m_{i,j} - c}{b - c}},{C = {{V^{- 1} \cdot {\begin{matrix}0 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 0\end{matrix}} \cdot V \cdot B} = {\begin{matrix}0.2126 & 0.7152 & 0.0722 \\0.2126 & 0.7152 & 0.0722 \\0.2126 & 0.7152 & 0.0722\end{matrix}}}},{V = {{\begin{matrix}1 & {- 1} & 0 \\0 & 1 & 0 \\0 & {- 1} & 1\end{matrix}} \cdot {\begin{matrix}1 & 0 & 0 \\0.2126 & 0.7152 & 0.0722 \\0 & 0 & 1\end{matrix}}}},{B = {\begin{matrix}1 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 1\end{matrix}}},{{{and}\mspace{14mu} A} = {{\begin{matrix}a_{11} & a_{12} & a_{13} \\a_{21} & a_{22} & a_{23} \\a_{31} & a_{32} & a_{33}\end{matrix}}.}}$
 17. The image processor of claim 16, wherein saidcolor correction matrix mixer is configured to determine a third colorcorrection matrix in response to determining that the pixel signal islower than a second pre-determined threshold.
 18. The image processor ofclaim 16, wherein said color correction matrix mixer is part of a camerasystem.
 19. The image processor of claim 16, wherein said colorcorrection matrix mixer is configured to determine a fourth colorcorrection matrix if the pixel signal is lower than a thirdpre-determined threshold, wherein said fourth color correction matrix is${C = {{V^{- 1} \cdot {\begin{matrix}0 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 0\end{matrix}} \cdot V \cdot B} = {\begin{matrix}0.2126 & 0.7152 & 0.0722 \\0.2126 & 0.7152 & 0.0722 \\0.2126 & 0.7152 & 0.0722\end{matrix}}}},$ and wherein ${V = {{\begin{matrix}1 & {- 1} & 0 \\0 & 1 & 0 \\0 & {- 1} & 1\end{matrix}} \cdot {\begin{matrix}1 & 0 & 0 \\0.2126 & 0.7152 & 0.0722 \\0 & 0 & 1\end{matrix}}}},{B = {\begin{matrix}1 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 1\end{matrix}}},$ and c is said third pre-determined threshold.